/* 
当前模块在分线程执行
当前有一个全局对象: self
    onMessage = (event) => {   event.data }
    addEventListener('message', (event) => {})
    postMessage(data)
如何让分线程模块能支持ESM
    
*/

// 引入其它模块
import { fibonacci } from "./10_utils";


console.log(self)



// 绑定监听接收消息
self.onmessage = (event) => {
  const num = event.data
  console.log('分线程收到主线程发送的消息', num)
  // 进行长时间的计算 =>在分线程执行的, 不会阻塞主线程, 可以响应用户操作
  const result = fibonacci(num)
  // 向主线程发送消息, 携带结果数据
  self.postMessage(result)
}